#include<iostream>
using namespace std;
char mat[1010][1010];
int n,m;
bool row[1010],col[1010];
void boom(int x,int y){
	mat[x][y]=true;
	if(!row[x]){
		row[x]=true;
		for(int i=0;i<m;i++){
			if(mat[x][i]=='1'){
				boom(x,i);
			}
		}
	}
	if(!col[y]){
		col[y]=true;
		for(int i=0;i<n;i++){
			if(mat[i][y]=='1'){
				boom(i,y);
			}
		}
	}
}
int main(){
	cin >> n >> m;
	for(int i=0;i<n;i++){
		scanf("%s",mat[i]);
	}
	int cnt=0;
	for(int i=0;i<n;i++){
		for(int j=0;j<m;j++){
			if(mat[i][j]=='1'){
				cnt++;
				boom(i,j);
			}
		}
	}
	cout << cnt << endl;
	return 0;
}
